package com.relytosoft.mizar.media.camera.api.pojo.vo;

import com.relytosoft.dubhe.common.core.utils.BeanCopyUtils;
import com.relytosoft.mizar.media.camera.api.entity.Multimedia;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * @author wss
 * @version 1.0
 * @date 2022/6/8 11:51
 */
@ApiModel("多媒体试图对象")
public class MultimediaVo implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "主键")
    private Integer id;

    @ApiModelProperty(value = "资源类型")
    private String resourceType;

    @ApiModelProperty(value = "记录时间")
    private LocalDateTime recordTime;

    @ApiModelProperty(value = "设备id")
    private Integer deviceId;

    @ApiModelProperty(value = "设备id")
    private String deviceName;

    @ApiModelProperty(value = "资源url")
    private String resourceUrl;

    @ApiModelProperty(value = "备注")
    private String remark;

    @ApiModelProperty(value = "状态")
    private Integer status;

    public static long getSerialVersionUID() {
        return serialVersionUID;
    }

    public static MultimediaVo buildVo(Multimedia multimedia) {
        MultimediaVo multimediaVo = new MultimediaVo();
        BeanCopyUtils.copy(multimedia, multimediaVo);
        return multimediaVo;
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getResourceType() {
        return resourceType;
    }

    public void setResourceType(String resourceType) {
        this.resourceType = resourceType;
    }

    public LocalDateTime getRecordTime() {
        return recordTime;
    }

    public void setRecordTime(LocalDateTime recordTime) {
        this.recordTime = recordTime;
    }

    public Integer getDeviceId() {
        return deviceId;
    }

    public void setDeviceId(Integer deviceId) {
        this.deviceId = deviceId;
    }

    public String getDeviceName() {
        return deviceName;
    }

    public void setDeviceName(String deviceName) {
        this.deviceName = deviceName;
    }

    public String getResourceUrl() {
        return resourceUrl;
    }

    public void setResourceUrl(String resourceUrl) {
        this.resourceUrl = resourceUrl;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    @Override
    public String toString() {
        return "MultimediaVo{" +
                "id=" + id +
                ", resourceType='" + resourceType + '\'' +
                ", recordTime=" + recordTime +
                ", deviceId=" + deviceId +
                ", deviceName='" + deviceName + '\'' +
                ", resourceUrl='" + resourceUrl + '\'' +
                ", remark='" + remark + '\'' +
                ", status=" + status +
                '}';
    }

}
